package com.sdonkey.score.service;


import com.sdonkey.score.bean.UpdatePlaceAdForm;
import com.sdonkey.score.exception.BusinessException;

import com.sdonkey.score.model.*;

import java.util.List;


public interface IAdPlacementService {
	
  
	
	/**
	 * 根据广告主 id 查询已投放广告
	 * @param advId
	 * @return
	 * @throws BusinessException
	 */
	public  List<FinishPlacementAdBean>  getPlacementAds(String advId);
	/**
	 * 根据广告id查询已投放 广告下面的渠道
	 * @param advId
	 * 
	 */
	public  List<TadPlacement>  getPlacementById(String advId, int adId);
	/**
	 * 根据渠道id查询渠道
	 * @param advId
	 * 
	 */
	public  TadPlacement  getPlacementByid(String advId, int adId);
	/**
	 * 根据广告主 id 查询已投放广告名称,id,图片路径
	 * @param advId
	 * @return
	 * 
	 */
	public  List<Tad>  getPlacementAdsByAdvId(String advId, String type);
	/**
	 * 根据广告主 id 查出广告主所在的公司和公司图片路径
	 * @param advId
	 * @return
	 * 
	 */
	public TadvertiserNew getCompanyByAdvId(int advId);
	//查出所有的渠道
	public  List<TadApprovider>  getAppprovider();
	
	/**
	 * 查询用户余额
	 * @param advId
	 * @return
	 * @throws BusinessException
	 */
	public Double getBalanceByAdvId(String advId);
	/**
	 * 查询单条渠道广告余额
	 * 
	 */
	public Double getAdvertiserBalanceById(int id);
	/**
	 * 投放之后修改广告状态
	 * 
	 * @return
	 */
	public int EditAdPlacmentstatus(String status, int adId);
	/**
	 * 根据渠道id更新 日期日期广告总金额广告余额广告单价(渠道表)
	 * 
	 * @return
	 */
	public int EditPlacment(TadPlacement tadPlacement);
	/**
	 * 根据渠道id更新 投放和暂停状态(1 投放 2 暂停 )
	 * 
	 * @return
	 */
	public int EditPlacmentstatus(String status, int id);
	/**
	 * 更改广告状态
	 * @param finishplacement
	 * @return
	 */
	public int updateAdStatus(FinishPlacementAdBean finishplacement);
	
	/**
	 * 根据广告id查询下面的渠道   判断是否还有投放的渠道 
	 */
	public  List<FinishPlacementAdBean>  getPlacementByadId(String advId, String adId);
	/**
	 * 根据广告id查询下面的渠道id (处于投放中)
	 */
	public  List<FinishPlacementAdBean>  getPlIdadId(String advId, String adId, String status);
	 /**
     * 保存t_ad_behavioral_statistics 一条数据 
     * 
     * @return
     */
	public int saveAdBehavioral(TadBehavioralStatistics tadBehavioralStatistics);
	
	/**
     * 查看t_ad_behavioral_statistics 数据是否存在 
     * 
     * @return
     */
	public String checkAdBehavioral(String adId);
	
//	/**
//	 * 根据 广告id 查询广告
//	 * @param adId
//	 * @return
//	 */
//	public EditPlaceAdBean getEditPlaceAdBean(String adId);
//	
	 /**
     * 保存投放图片广告和一系列业务
     * @param advId
     * @param placeAdForm
     * @return
     */
	public int savePlaceAd(TadPlacement tadPlacement, String advId, String status, int adId, String money, String balance, TadBehavioralStatistics tadBehavioralStatistics);
	
	 /**
     * 保存投放图片广告
     * @param advId
     * @param placeAdForm
     * @return
     */
	public int savePlacementAd(TadPlacement tadPlacement, String advId, String status, int adId);
	
	public  List<ChannelBean>  getChannels();
	

//	/**
//	 * 广告状态（删除）
//	 * @param finishplacement
//	 * @return
//	 */
//	public int updateAdPlacementStatus(String adId,int status);

	

}
